#ifndef WORLD_H_INCLUDED_29096186
#define WORLD_H_INCLUDED_29096186
//-----------------------------------------------------------------------------
// Copyright (c) 2011 David Waby
// Initially created on 01/11/2011
//-----------------------------------------------------------------------------

#include "Map.h"
#include "Renderer.h"
#include "IEventListener.h"
#include "MapStore.h"
#include "ItemStore.h"
class Character;
       
//-----------------------------------------------------------------------------
class World : public IEventListener
{
public:
									World();
									~World();

	void							Initialise();
	void							Input();
	void							Update();
	void							Render();
	void							Shutdown();

	virtual void					HandleEvent(Event const & i_event);

protected:

private:

	MapStore						m_mapStore;
	ItemStore						m_itemStore;
	Map *							m_currentMap;
	Character *						m_character;
	Renderer						m_renderer;

									World(const World &rhs);
									World& operator = (const World &rhs);
};


//-----------------------------------------------------------------------------
#endif // WORLD_H_INCLUDED_29096186
